home *** CD-ROM | disk | FTP | other *** search
/ CU Amiga Super CD-ROM 11 / CU Amiga Magazine's Super CD-ROM 11 (1997)(EMAP Images)(GB)(Track 1 of 3)[!][issue 1997-06].iso / cucd / programming / stormc-demo / installa stormc < prev    next >
Text File  |  1997-01-07  |  16KB  |  813 lines

  1. ; $VER: StormC-Demo V2.0 Install Version 1.067(7.1.97)
  2.  
  3. ; Script di Installazione
  4.  
  5. ; (c) 1996 HAAGE & PARTNER Computer GmbH
  6. ; Traduzione in italiano di Reinhard Spisser
  7.  
  8.  
  9. (complete 0)
  10.  
  11.  
  12.  
  13. ; La versione e la data di compilazione di questa versione
  14.  
  15. (set stcpp-version "2.0")
  16.  
  17. (set stcpp-date "(17 Dex 96)")
  18.  
  19.  
  20.  
  21. ;====================================================================
  22.  
  23. ; Inizializzazioni
  24.  
  25.  
  26.  
  27.  
  28.  
  29. (set @default-dest "")
  30.  
  31.  
  32.  
  33. (set os-version (/ (getversion) 65536))
  34.  
  35. (set os-13 (< os-version 36))
  36.  
  37. (set os-20 (>= os-version 36))
  38.  
  39. (set os-21 (>= os-version 38))
  40.  
  41.  
  42.  
  43. (set totalmem (database "total-mem")) ; Questa funzione ci semplifica la vita
  44.  
  45.  
  46.  
  47. ; Il Percorso dei programmi usati
  48.  
  49.  
  50.  
  51. ;(set run-lha                           "run RAM:Lhex x -a ")
  52.  
  53. ;(set run-free                          "run C/StormFree")
  54.  
  55.  
  56.  
  57. ; Qui si trovano i vari file da copiare...
  58.  
  59.  
  60.  
  61. (set #binsource                         (tackon (pathonly @icon) "StormSYS"))   ; I programmi eseguibili
  62.  
  63. (set #includesource             (tackon (pathonly @icon) "INCLUDE"))    ; Gli include
  64.  
  65. (set #envsource                 (tackon (pathonly @icon) "ENV"))                        ; Le Preferenze
  66.  
  67. (set #libsource                 (tackon (pathonly @icon) "LIB"))                        ; Le Librerie
  68.  
  69. (set #samplesource              (tackon (pathonly @icon) "Examples"))   ; Le sorgenti dei programmi dimostrativi
  70.  
  71. (set #manualsource              (tackon (pathonly @icon) "MANUAL"))             ; La documentazione
  72.  
  73. (set #toolssource       (tackon (pathonly @icon) "TOOLS"))              ; I tool
  74.  
  75. (set #rexxsource        (tackon (pathonly @icon) "Rexx"))               ; Rexx-Scripts
  76.  
  77. ;(set #flibsource        (tackon (pathonly @icon) "Fast-Ansi-Lib")) ; Hier steht die neue Ansi-lib
  78.  
  79. ;(set #muilibsource      (tackon (pathonly @icon) "Mui-Class-Lib")) ; Hier steht die Mui Klassen-Library
  80.  
  81. (set source-Liesmich    (tackon (pathonly @icon) "Leggimi"))            ; Il file LEGGIMI
  82.  
  83. (set source-ikon                (tackon (pathonly @icon) "StormCPP.info"))      ; L'icona del Programma
  84.  
  85. (set #wizlibsource      (tackon (pathonly @icon) "LIBS/Wizard.library")) ; Le nuove classi Boopsi
  86.  
  87.  
  88. ;(set !auswahlhilfe
  89.  
  90. ;       (cat "\Sul disco si trova già una versione precedente \n "
  91.  
  92. ;        "del file da installare. \n\n"
  93.  
  94. ;        "Selezionando \"Yes\", il file vecchio verrà sovrascritto,  "
  95.  
  96. ;        "con  \"No\" il file non verrà copiato\n"))
  97.  
  98.  
  99.  
  100. (set #prp-copy-samples
  101.  
  102.         "Copia di:\nEsempi C e C++...")
  103.  
  104. (set #hlp-copy-samples
  105.  
  106.         "Utilizzare il manuale e gli esempi per un avvio rapido con StormC")
  107.  
  108. (set #prp-copy-env
  109.  
  110.         "Copia di:\nIcone di default di StormC...")
  111.  
  112. (set #hlp-copy-env
  113.  
  114.         "Le icone sono utilizzate dal gestore progetti e dal editor")
  115.  
  116. (set #prp-copy-includes
  117.  
  118.         "Copia di:\nInclude C++...")
  119.  
  120.  
  121. (set #hlp-copy-includes
  122.  
  123.         "Gli include sono necessari per il compilatore")
  124.  
  125. (set #prp-copy-libs
  126.  
  127.         "Copia di:\nLibrerie del linker...")
  128.  
  129.  
  130. (set #hlp-copy-libs
  131.  
  132.         "Queste liberie vengono utilizzate dal linker")
  133.  
  134. (set #prp-copy-manual
  135.  
  136.         "Copia di:\nDocumentazione...")
  137.  
  138. (set #hlp-copy-manual
  139.  
  140.         "Questo è un file AmigaGuide per StormC")
  141.  
  142. (set #prp-copy-bin
  143.  
  144.         "Copia di:\nEseguibili di StormC...")
  145.  
  146. (set #hlp-copy-bin
  147.  
  148.         "Per la prima installazione di StormC \nè consigliabile copiare tutto!")
  149.  
  150. (set #prp-copy-tools
  151.  
  152.         "Copia di:\nScreentool...")
  153.  
  154. (set #hlp-copy-tools
  155.         "Questa è una Screenmanager-Commodity per StormC")
  156.  
  157. (set #prp-copy-lib
  158.         "Copia di:\nWizard.library...")
  159.  
  160. (set #hlp-copy-lib
  161.         "Questa è la libreria di classi Boopsi di StormWizard!")
  162.  
  163. (set #prp-copy-fastlib
  164.    "Copying the FAST-ANSI-Library")
  165.  
  166. (set #hlp-copy-fastlib
  167.    "With it you can generate fast ANSI-C programms.")
  168.  
  169. (set #prp-copy-muilib
  170.    "Copying the Mui Klassen-Library")
  171.  
  172. (set #hlp-copy-muilib
  173.    "The library makes it possible to program MUI with C++")
  174.  
  175. ; Le Dimensioni dei vari file
  176.  
  177. (set size-stormcpp                      24000)
  178. (set size-stormc                                432000)
  179. (set size-stormed                               200000)
  180. (set size-stormshell                    330000)
  181. (set size-stormrun                      220000)
  182. (set size-stormasm                      36000)
  183. (set size-stormpics                     50000)
  184. (set size-stormlex                      50000)
  185. (set size-libs                                  350000)
  186. (set size-inlcudes                      400000)
  187. (set size-demos                         100000)
  188.  
  189.  
  190. (set size-komplett      ( + size-stormrun size-stormasm size-stormcpp size-stormc size-stormed size-stormshell size-stormpics size-stormlex size-libs size-inlcudes size-demos))
  191.  
  192.  
  193.  
  194. ; ----------------------------- Procedure ------------------------------
  195.  
  196.  
  197.  
  198. (Procedure Make_Folder
  199.  
  200.     (
  201.  
  202.     (set folder (tackon folder "StormC"))
  203.  
  204.     (if (= (exists folder) 0)
  205.  
  206.        (
  207.  
  208.        (makedir folder (infos))
  209.  
  210.        )
  211.  
  212.     ))
  213.  
  214. )
  215.  
  216.  
  217.  
  218. ;=====================================================================================
  219.  
  220. ; Beginn der Installation
  221.  
  222. ;=====================================================================================
  223.  
  224.  
  225.  
  226. ; Eine kleine Einleitung, gefolgt vom Startbild des Installers.
  227.  
  228.  
  229.  
  230. (set act-user-level @user-level)
  231.  
  232. (user 1)
  233.  
  234.  
  235.  
  236. (message (cat   "\nBenvenuti all'installazione di \n\n\"StormC demo "
  237.                                          stcpp-version " del "stcpp-date "\"!\n\n"
  238.                                         "Questo script copia su disco fisso tutti i file\n"
  239.                                         "necessari per un corretto funzionamento\n"
  240.                                         "di StormC.\n"))
  241.  
  242.  
  243.  
  244. (user act-user-level)
  245.  
  246. (welcome)
  247.  
  248.  
  249.  
  250. (complete 5)
  251.  
  252.  
  253.  
  254. (set act-user-level @user-level)
  255.  
  256. (user 1)
  257.  
  258.  
  259.  
  260.  
  261.  
  262. ;       Alte Version pruefen und entsprechende Warnung ausgeben! **************************************************************
  263.  
  264.  
  265.  
  266. (set folder "WORK:StormC")
  267.  
  268.  
  269.  
  270. (if (exists "StormC:" (noreq))
  271.         (
  272.                 (message (cat   "\nSul disco si trova già una versione di StormC\n"
  273.                                                 "Selezionare la directory padre tramite \"Parent Drawer\"\n"
  274.                                                 "se si desidera aggiornare StormC!"))
  275.  
  276.         (set folder (getassign "STORMC"))
  277.         )
  278. )
  279.  
  280.  
  281.  
  282. (set cmpstr (getassign "STORMC"))
  283.  
  284.  
  285.  
  286. (user act-user-level)
  287.  
  288.  
  289.  
  290. (if (= @user-level 0)
  291.  
  292.         (
  293.  
  294.         (user 1)
  295.  
  296.         (message (cat   "La modalità ENTRY necessita di almeno \n5 MB spazio libero sul disco fisso\n."
  297.  
  298.                                                 "Selezionare una directory/volume per l'installazione di StormC"
  299.  
  300.                                                 "\n\n"
  301.  
  302.                                                 "Le altre impostazioni verranno effettuati dall'installazione "
  303.  
  304.                                                 "per adattarsi al tuo sistema."))))
  305.  
  306.  
  307.  
  308. (set ok 0)
  309.  
  310. (while (not ok)
  311.  
  312.         (set folder
  313.  
  314.                 (askdir
  315.  
  316.                         (prompt (cat "\n"
  317.  
  318.                                                          "Selezionare un percorso per l'installazione di StormC.\n"
  319.  
  320.                                                          "Verrà crato una directory StormC!"))
  321.  
  322.                         (help (cat      "    Premendo 'Show drives' verrà visualizzato\n un elenco di tutti i i volumi disponibili.\n"
  323.  
  324.                                                         "Da questa lista selezionare uno dei nomi non colorati.\n "
  325.  
  326.                                                         "    Nomi tipici sono \"Work:\", \"HD0:\" oppure \"DH0:\"; "
  327.  
  328.                                                         "non utilizzare nomi come \"DF0:\", \"DF1:\", "
  329.  
  330.                                                         "\"DF2:\", \"DF3:\", \"RAD:\", \"RAM:\", \"System2.0:\", "
  331.  
  332.                                                         "\"WB_2.x:\", \"System3.0:\" oppure \"WB_3.x:\"!"
  333.  
  334.                                                         "\n\n"
  335.  
  336.                                                         "L'installazione di StormC non può essere effettuata direttamente\nin un volume.\n"
  337.  
  338.                                                         "Deve essere selezionata una directory, altrimenti verrà visualizzato un errore. "
  339.  
  340.                                                         "\n\n"
  341.  
  342.                                                         @askdir-help))
  343.  
  344.                         (default folder)
  345.  
  346.                         (disk)
  347.  
  348.                 )
  349.  
  350.         )
  351.  
  352.  
  353.  
  354.    (Make_Folder)    ; // Crea automaticamente la directory!
  355.  
  356.  
  357.  
  358.         ; Ist der Dateiname leer oder endet mit einem ':' oder existiert unter
  359.  
  360.         ; diesem Namen kein Verzeichnis, wird eine Fehlermeldung angezeigt; andernfalls
  361.  
  362.         ; kann die Auswahl-Schleife beendet werden.
  363.  
  364.         (if (or (or (or (<= (strlen folder) 0) (= (substr folder (- (strlen folder) 1) 1) ":")) (= (exists folder (noreq)) 0)) (= (getdiskspace folder) -1))
  365.  
  366.                 (message (cat   "\n \"" folder "\" non è una "
  367.  
  368.                                                         "directory valida !\n\n"
  369.  
  370.                                                         "Utilizzare 'Show drives' per visualizzare un elenco di tutti i volumi disponibili! "
  371.  
  372.                                                         " Da questa lista, selezionare solo gli elementi non colorati!."
  373.  
  374.                                                         "\n"
  375.  
  376.                                                         "Utilizzare \"New drawer...\" per creare una nuova directory nel volume corrente"))
  377.  
  378.                 ;else
  379.  
  380.                 (
  381.  
  382.                         (set freediskspace (getdiskspace folder))       ; Der freie Speicher auf diesem Medium
  383.  
  384.  
  385.  
  386.                         (if (< freediskspace size-komplett)
  387.  
  388.                                 (
  389.  
  390.                                 (user 1)
  391.  
  392.                                 (message (cat   "\nIl volume selezionato non ha sufficiente\n"
  393.                                 "spazio libero per l'installazione completa di StormC. "
  394.  
  395.                                                                                         "\n\n"
  396.  
  397.                                                                                         "Spazio libero: " freediskspace "!\n"
  398.  
  399.                                                                                         "Spazie richiesto " size-komplett "!\n\n"
  400.  
  401.                                                                                         "Selezionare un altro volume !"))
  402.  
  403.                                 )
  404.  
  405.                         ;else
  406.  
  407.                         (set ok 1)
  408.  
  409.                         )
  410.  
  411.                 )
  412.  
  413.         )
  414.  
  415. )
  416.  
  417.  
  418.  
  419. (makeassign "STORMC")
  420.  
  421.  
  422.  
  423. (user act-user-level)
  424.  
  425.  
  426.  
  427. (set @default-dest folder)      ; This Assign is very important!
  428.  
  429.  
  430.  
  431. (set destbin    (tackon folder "StormSYS"))
  432.  
  433. (if                                             ; Create Directory for Compiler
  434.  
  435.         (= (exists destbin) 0)
  436.  
  437.         (makedir destbin (infos))
  438.  
  439. )
  440.  
  441.  
  442.  
  443. (set destdemo   (tackon folder "Examples"))
  444.  
  445. (if                                             ; Create Directory for Demos
  446.  
  447.         (= (exists destdemo) 0)
  448.  
  449.         (makedir destdemo (infos))
  450.  
  451. )
  452.  
  453. (set destinclude (tackon folder "Include"))
  454.  
  455. (if                                             ; Create Directory for Includes
  456.  
  457.         (= (exists destinclude) 0)
  458.  
  459.         (makedir destinclude)
  460.  
  461. )
  462.  
  463.  
  464.  
  465. (set destlib    (tackon folder "Lib"))
  466.  
  467. (if                                             ; Create Directory for Libraries
  468.  
  469.         (= (exists destlib) 0)
  470.  
  471.         (makedir destlib)
  472.  
  473. )
  474.  
  475.  
  476.  
  477. (set destmanual (tackon folder "Manual"))
  478.  
  479. (if                                             ; Create Directory for Documentation
  480.  
  481.         (= (exists destmanual) 0)
  482.  
  483.         (makedir destmanual (infos))
  484.  
  485. )
  486.  
  487. (set desttools  (tackon folder "Tools"))
  488.  
  489. (if                                             ; Create Directory for Tools
  490.  
  491.         (= (exists desttools) 0)
  492.  
  493.         (makedir desttools (infos))
  494.  
  495. )
  496.  
  497. (set rexxscripts   (tackon folder "Rexx"))
  498.  
  499. (if                                             ;Fastansilib-Verzeichnis erzeugen
  500.         (= (exists rexxscripts) 0)
  501.         (makedir rexxscripts)
  502. )
  503.  
  504. (complete 5)
  505.  
  506.  
  507.  
  508. ; Copy Readme to Harddisk!
  509.  
  510.  
  511.  
  512. (copyfiles
  513.  
  514.         (source source-Liesmich)
  515.  
  516.         (dest folder)
  517.  
  518.         (infos)
  519.  
  520. )
  521.  
  522.  
  523.  
  524. (complete 8)
  525.  
  526.  
  527.  
  528. (set morerunpath "run C/More Leggimi")
  529.  
  530.  
  531.  
  532. (run morerunpath)       ; load Leggimi
  533.  
  534.  
  535.  
  536. (complete 10)
  537.  
  538.  
  539.  
  540. (set destinfo   (tackon folder "StormCPP.info"))
  541.  
  542. (if                                             ; Generate Project-Icon
  543.         (= (exists destinfo) 0)
  544.         (
  545.         (copyfiles
  546.                 (source source-ikon)
  547.                 (dest folder)
  548.         ))
  549. )
  550.  
  551.  
  552.  
  553. (complete 15)
  554.  
  555.  
  556. (copyfiles                                                                                      ; copy Examples
  557.  
  558.         (prompt #prp-copy-samples)
  559.  
  560.         (help #hlp-copy-samples)
  561.  
  562.         (source #samplesource)
  563.  
  564.         (dest destdemo)
  565.  
  566.         (all)
  567.  
  568.         (confirm)
  569.  
  570. )
  571.  
  572.  
  573.  
  574. (complete 20)
  575.  
  576.  
  577.  
  578. (copyfiles                                                                                      ; copy Settings
  579.  
  580.         (prompt #prp-copy-env)
  581.  
  582.         (help #hlp-copy-env)
  583.  
  584.         (source #envsource)
  585.  
  586.         (dest "ENVARC:")
  587.  
  588.         (all)
  589.  
  590.         (confirm)
  591.  
  592. )
  593.  
  594.  
  595.  
  596. (complete 22)
  597.  
  598.  
  599.  
  600. (copyfiles                                                                                      ; copy Settings
  601.  
  602.         (prompt #prp-copy-env)
  603.  
  604.         (help #hlp-copy-env)
  605.  
  606.         (source #envsource)
  607.  
  608.         (dest "ENV:")
  609.  
  610.         (all)
  611.  
  612.         (confirm)
  613.  
  614. )
  615.  
  616.  
  617.  
  618. (complete 25)
  619.  
  620.  
  621.  
  622. (copyfiles                                                                                      ; copy compiler
  623.  
  624.         (prompt #prp-copy-bin)
  625.  
  626.         (help #hlp-copy-bin)
  627.  
  628.         (source #binsource)
  629.  
  630.         (dest destbin)
  631.  
  632.         (all)
  633.  
  634.         (confirm)
  635.  
  636. )
  637.  
  638.  
  639.  
  640. (complete 40)
  641.  
  642.  
  643.  
  644. (copyfiles                                                                                      ; copy includes
  645.  
  646.         (prompt #prp-copy-includes)
  647.  
  648.         (help #hlp-copy-includes)
  649.  
  650.         (source #includesource)
  651.  
  652.         (dest destinclude)
  653.  
  654.         (all)
  655.  
  656.         (confirm)
  657.  
  658. )
  659.  
  660.  
  661.  
  662. (complete 60)
  663.  
  664.  
  665.  
  666. (copyfiles                                                                                      ; copy libs
  667.  
  668.         (prompt #prp-copy-libs)
  669.  
  670.         (help #hlp-copy-libs)
  671.  
  672.         (source #libsource)
  673.  
  674.         (dest destlib)
  675.  
  676.         (all)
  677.  
  678.         (confirm)
  679.  
  680. )
  681.  
  682.  
  683.  
  684. (complete 80)
  685.  
  686.  
  687.  
  688. (copyfiles                                                                                      ; copy manual
  689.  
  690.         (prompt #prp-copy-manual)
  691.  
  692.         (help #hlp-copy-manual)
  693.  
  694.         (source #manualsource)
  695.  
  696.         (dest destmanual)
  697.  
  698.         (all)
  699.  
  700.         (confirm)
  701.  
  702. )
  703.  
  704. (complete 90)
  705.  
  706.  
  707.  
  708. (copyfiles                                                                                      ; copy tools
  709.  
  710.         (prompt #prp-copy-tools)
  711.  
  712.         (help #hlp-copy-tools)
  713.  
  714.         (source #toolssource)
  715.  
  716.         (dest desttools)
  717.  
  718.         (all)
  719.  
  720.         (confirm)
  721.  
  722. )
  723.  
  724. (complete 91)
  725.  
  726.  
  727. (copyfiles                                                                                      ; Fastlib kopieren
  728.         (prompt #prp-copy-fastlib)
  729.         (help #hlp-copy-fastlib)
  730.         (source #rexxsource)
  731.         (dest rexxscripts)
  732.         (all)
  733.         (confirm)
  734. )
  735.  
  736. (complete 93)
  737.  
  738. (copylib                                                                                        ; Copy Wizard.Library
  739.         (prompt #prp-copy-lib)
  740.         (help #hlp-copy-lib)
  741.         (source #wizlibsource)
  742.         (dest "LIBS:")
  743.         (confirm)
  744. )
  745.  
  746.  
  747. (complete 95)
  748.  
  749.  
  750.  
  751. ; ------- CHANGE STARTUP
  752.  
  753.  
  754.  
  755. (set command1 (cat  "ASSIGN STORMC: " folder ""))
  756.  
  757.  
  758.  
  759. (set command1.txt
  760.  
  761.         (cat
  762.  
  763.                 "\n\n\nSono necessarie alcune aggiunte alla User-Startup per permettere un "
  764.  
  765.       "corretto funzionamento di StormC.\n\n"
  766.  
  767.                 command1
  768.  
  769.         )
  770.  
  771. )
  772.  
  773.  
  774.  
  775. (startup "StormC"
  776.  
  777.         (prompt command1.txt)
  778.  
  779.         (help #help-startup)
  780.  
  781.         (command command1)
  782.  
  783. )
  784.  
  785.  
  786.  
  787. (makeassign "STORMC")
  788.  
  789. (makeassign "STORMC" folder)
  790.  
  791. (delete "RAM:LHex")
  792.  
  793. (complete 100)
  794.  
  795.  
  796.  
  797. ; ------- FINISHED
  798.  
  799.  
  800.  
  801. (message (cat
  802.  
  803.         "\nInstallazione di StormC completata.\n"
  804.  
  805.    "Se le linee:\n" command1 "\nnon sono inserite nella Startup-Sequence o "
  806.  
  807.    "User-Startup, il comando deve essere inserito a mano!\n\n"
  808.  
  809.    "\n\nBuon divertimento con StormC! ... ")
  810.  
  811. )
  812.  
  813.